Sometimes it is useful to have your code contact the HW probe directly
rather than call BUG().
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %05%C8%CE%1Di%7C%D7%D1j%DB%FBpf%80%AD%FB%95%D4I%0F
}
}
-static void hw_probe_attn(unsigned char key, struct cpu_user_regs *regs)
+
+void noinline __attn(void)
{
/* To continue the probe will step over the ATTN instruction. The
* NOP is there to make sure there is something sane to "step
* over" to. */
- asm volatile(".long 0x00000200; nop");
+ console_start_sync();
+ asm volatile("attn");
+ console_end_sync();
+}
+
+static void hw_probe_attn(unsigned char key, struct cpu_user_regs *regs)
+{
+ __attn();
}
static void percpu_init_areas(void)
#define WARN() __warn(__FILE__, __LINE__)
#define WARN_ON(_p) do { if (_p) WARN(); } while ( 0 )
+extern void __attn(void);
+#define ATTN() __attn();
+
#define FORCE_CRASH() __force_crash()
#ifdef CRASH_DEBUG